/*
 *         (C) COPYRIGHT NBI Limited
 *              ALL RIGHT RESERVED
 *
 * File        : fastflow/protobuf/onnx_proto_helper.h
 * Authors     : dzhang
 * Create Time : 2021/09/03 09:28:05
 * Description :
 *
 */

#ifndef __FASTFLOW_PROTOBUF_ONNX_PROTO_HELPER_H___
#define __FASTFLOW_PROTOBUF_ONNX_PROTO_HELPER_H___
#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/io/zero_copy_stream_impl.h>
#include <google/protobuf/message.h>
#include <google/protobuf/text_format.h>

#include "onnx/defs/schema.h"
#include "onnx/onnx_pb.h"

namespace fastflow{

bool onnx_read_proto_from_binary(const char* filepath, google::protobuf::Message* message);

bool onnx_write_proto_from_binary(const char* filepath, const google::protobuf::Message* message);

bool onnx_shape_inference(ONNX_NAMESPACE::ModelProto& m);

}  // namespace fastflow

#endif  // __FASTFLOW_PROTOBUF_ONNX_PROTO_HELPER_H___